@echo off
REM GinAdmin服务端构建脚本(Windows版)

echo 正在构建GinAdmin服务端...

REM 检查Go是否可用
where go >nul 2>nul
if %ERRORLEVEL% neq 0 (
    echo 错误: 未找到Go环境，请安装Go并确保已添加到PATH中。
    pause
    exit /b 1
)

REM 进入项目根目录
cd /d "%~dp0.."

REM 更新依赖
echo 正在更新依赖...
go mod tidy
if %ERRORLEVEL% neq 0 (
    echo 错误: 更新依赖失败。
    pause
    exit /b 1
)

REM 设置构建参数
set GOOS=windows
set GOARCH=amd64
set CGO_ENABLED=0
set OUTPUT_DIR=build
set OUTPUT_NAME=ginadmin_server.exe

REM 创建输出目录
if not exist %OUTPUT_DIR% mkdir %OUTPUT_DIR%

REM 构建应用
echo 正在构建应用...
go build -ldflags="-s -w" -o %OUTPUT_DIR%\%OUTPUT_NAME% .\cmd\main.go
if %ERRORLEVEL% neq 0 (
    echo 错误: 构建失败。
    pause
    exit /b 1
)

REM 复制配置文件
echo 正在复制配置文件...
xcopy /Y /I configs\* %OUTPUT_DIR%\configs\

echo.
echo 构建完成，输出文件位于: %OUTPUT_DIR%\%OUTPUT_NAME%
echo 请确保配置文件正确设置后再运行应用。

pause 